From eaef24c527833232bd4725789b0f35304de8123b Mon Sep 17 00:00:00 2001 From: Nirbheek Chauhan Date: Fri, 3 Apr 2020 17:32:51 +0530 Subject: [PATCH] meson: Fix check for builtype arguments `get_option('buildtype')` will return `'custom'` for most combinations of `-Doptimization` and `-Ddebug`, but those two will always be set correctly if only `-Dbuildtype` is set. So we should look at those options directly. For the two-way mapping between `buildtype` and `optimization` + `debug`, see this table: https://mesonbuild.com/Builtin-options.html#build-type-options --- meson.build | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/meson.build b/meson.build index 7eee560a6d..bf63c1330e 100644 --- a/meson.build +++ b/meson.build @@ -60,14 +60,17 @@ add_project_arguments('-DGTK_VERSION="@0@"'.format(meson.project_version()), lan add_project_arguments('-D_GNU_SOURCE', language: 'c') +# Use debug/optimization flags to determine whether to enable debug or disable +# cast checks gtk_debug_cflags = [] -buildtype = get_option('buildtype') -if buildtype.startswith('debug') +debug = get_option('debug') +optimization = get_option('optimization') +if debug gtk_debug_cflags += '-DG_ENABLE_DEBUG' - if buildtype == 'debug' + if optimization in ['0', 'g'] gtk_debug_cflags += '-DG_ENABLE_CONSISTENCY_CHECKS' endif -elif buildtype == 'release' +elif optimization in ['2', '3', 's'] gtk_debug_cflags += '-DG_DISABLE_CAST_CHECKS' endif -- 2.30.2